perm filename MSS.MAN[MAN,LCS]22 blob
sn#191288 filedate 1975-12-06 generic text, type T, neo UTF8
00010 ********* MSS *************** 12/3/75
00055
00100 ***PROGRAMS TO EDIT MUSIC ON DISPLAY AND PRINT IT ON XGP OR CALCOMP ***
00200
00250 THIS SERIES OF PROGRAMS IS THE PROPERTY OF LELAND SMITH, PROFESSOR OF MUSIC
00275 AT STANFORD UNIVERSITY. IT MAY NOT BE USED OR COPIED WITHOUT HIS PERMISSION.
00280
00300 TO RUN: SEE LAST PAGE FOR 'RPG' FILES.
00400 (FOR THE PROGRAM TO RUN IT MUST PICK UP SOME SPECIAL
00500 DATA IN DAT,LCS.)
00600
00700 <<<<<< SOME GENERAL ADVICE: 'SAVE' THE WORK OFTEN.(SEE PG.6)
00800
00900 PUT IN ALL NOTES, CLEFS, BEAMS, ETC.(ALL THE THINGS PUT IN
01000 WITH 'SCORE' INPUT) FIRST. THEN DO ALL 'JUSTIFYING'(PG.8)
01100 OF LINES, IF NEEDED, BEFORE ADDING OTHER WORDS, NUMBERS,
01200 ETC. (THE PROGRAM WILL RUN FASTER AND YOU WILL HAVE THE
01300 FINAL POSITIONS OF THE NOTES DISPLAYED.)
01400
01500 SEE SECTION ON 'SCORE' INPUT (PG.9) FOR FIRST STEPS IN INPUT.
01600
01700 HORIZANTAL SPACING IS ON A SCALE OF 0 TO 200.(SEE END OF PG.5)
01800
01900 VERTICAL SPACING IS BY NOTE LEVEL NUMBERS. THE POSITION OF MIDDLE C
02000 IN THE TREBLE CLEF IS TAKEN AS 1. D=2, G=5, C ABOVE=8, G ABOVE=12,
02100 ETC. THE B BELOW MIDDLE C =0, A=-1, G=-2, ETC. THUS VERTICAL
02200 POSITIONS UP FROM MIDDLE C MAY BE THOUGHT OF AS THE NUMBERS OF THE
02300 DIATONIC INTERVALS FROM C. (HOWEVER THIS DOES NOT FOLLOW WHEN GOING
02400 DOWN FROM MIDDLE C.)
02500
02600
02700 THE CODE NUMBERS: ROUGH INDEX: THE 'PAGE' NUMS.
02800
02900 1 - NOTES CODE NUMS. 2,3,4,5
03000 2 - RESTS LETTERS, WORDS 6
03100 3 - CLEFS, DYNAMICS VARIOUS COMMANDS 7
03200 4 - LINES, BOXES XGP INFO. 7
03300 5 - SLURS, BRACKETS EDIT MODES 8
03400 6 - BEAMS MOVE, COPY, ETC. 8
03500 7 - TRILL, PEDALS DP, JUSTIFY, ETC. 8
03600 8 - STAFF "SCORE" INPUT 9
03700 9 - MISC. AUTO. SPACING 10
03800 10 - NUMBERS 'PAK' PROGRAM 10
03900 11 - LIBRARY SUBROUTINE LIST 11
04000 12 - CIRCLES RPG LIST 12
04100 14 - 'SCORE'
04200 16 - LETTERS
04300 17 - KEY SIG.
04400 18 - METER
04500 19 - ADJ. STEMS
04600 24 - 'ZOOM'
04700 33 - PARAM. VALUE
04800 44 - SEE FONTS
04900 101 - SPACING SCALE
05000 144 - READ SOS FILES
05100 333 - SEE DATA LIST
05200 444 - SET SPACING STAFF NUM.
00100 ******* KEY TO THE PARAMETER NUMBERS *******
00200
00300 P1=CODE NUMBER, P2=STAFF NUMBER,
00400 P3=HORIZANTAL POSITION, P4=VERTICAL POSITION BY NOTE NUMBER,
00500 P5=OFTEN 2ND VERTICAL POS., P6=OFTEN 2ND HORIZANTAL POS.
00600
00700 THE FOLLOWING CODE NUMBERS ARE USED MAINLY FOR EDITING.
00800 -------- SECTION I ---------
00900
01000 1 NOTES: 1, STAFF, POS, NOTE NUM(VERT. POS.),
01100 (P5) STEM DIR & ACCI,
01200 (P6) FILLED IN? (≥0), DECIS REFER TO ACCENTS, ETC.
01300 (P7)NUM OF TAILS(1=8TH,4=64TH, ETC.)
01400 (IF 2 DIGITS, LFT IS NUM OF DOTS.)
01500 (P8)STEM EXT. BY NT NUM,
01600 (P9)=-1 TO SUPPRESS LEDGER LINES.
01700 (P9 ALSO STORES RHYTHMIC VALUE FOR SPACING.)
01800 (P10)=1 PUTS SLASH ON GRACE-NOTE TAIL (1000 IN P8=SAME)
01900 (P11)=CHANGE SOURCE POS. OF STEM. (USE WITH P4=400+)
02000
02100 P4 100S GIVE MINIS, 200S GIVE DIAMOND SHAPE (HARMONICS)
02200 300S GIVE 'X' NOTES (FOR PERCUSSION, ETC.), 400S=NO NOTE HEAD.
02300
02400 FOR P5: <10= NO STEM, 10-13=STEM UP, 20-23= STEM DOWN
02500 1,11 OR 21=FLAT; 2,12,22=#; 3,13,23=NATURAL; 4=DBL b; 5=DBL #
02600
02700 FOR P6: POS NUM OR 0 = BLACK NOTE, ANY NEG NUM = WHITE NOTE.
02800 FOR P6: 10,-10 'HOMES' TO RIGHT OF UPWARD STEM.
02900 20,-20 'HOMES' TO LEFT OF DOWNWARD STEM.
03000 30,-30(FOR 0,-1) PUTS DOTS IN PROPER PLACE IN COMPLEX CHORDS.
03100
03200 IF P7 HAS 2 DIGITS THE NOTE IS DOTTED; 2ND DIG. IS NUM OF TAILS.
03300 IF 2ND DIGIT IS 1 AND P6 IS NEG. A WHOLE NOTE PRINTS.
03400 DECIMALS AFTER P5 OR P7 SPACE OUT ACCIDENTAL OR DOT.
03500 .01 IN P7 PUTS SLASH THROUGH TAIL (SAME AS P10).
03600 DECIMALS AFTER P6 ARE ACCENT NUMS (.4-.7,.9 ETC. SEE CODE #9)
03700 UP TO 2 ACCENTS CAN BE PUT IN THIS WAY.
03710
03800
03900
04000 2 RESTS: 2,STF,POS,HGT,REST(-2=WHOLE, 0=1/4, 1=1/8,ETC), P6) 1=DOTTED
04100
04200 P8=NUMBER OF MEASURES REST(TO 999). THE REST WILL ALWAYS
04300 TURN INTO A WHOLE REST. A HORIZANTAL LINE WILL DISPLAY
04400 BELOW THE REST TO FACILITATE CENTERING BETWEEN 2 BAR
04500 LINES. TO CHANGE THE WIDTH OF THIS CENTERING LINE
04600 ALTER P6.
04700 (IF P6=0 THE LINE WILL EXTEND ABOUT 10 UNITS IN EACH
04800 DIRECTION. A NON-ZERO ENTRY WILL CHANGE THIS.)
04900 P8=-1 GIVES WHOLE REST WITHOUT NUMBER ABOVE.
05000
05100 P8=-2 WILL CENTER WHOLE REST BETWEEN 2 BAR LINES IF
05200 THEY ARE IN THE EXACT ORDER BAR-REST-BAR. IF THIS IS
05300 NOT THE CASE THE REST MUST BE CENTERED VISUALLY. USE P6.
05400
05410
05420
05430
05440
05450
05470
05500 3 CLEFS, DYNAMICS AND OTHER THINGS:
05600 3, STAFF, POS, P4=HGT CHANGE(TO MAKE SOP. ETC.),P5=CLEF NUM
05610 P6-P9 (SAME AS IN CODE 9)
05690
05700 (CLEF NUMS ARE: TREB=0, BASS=1, ALTO=2, TENOR=3,
05800 4=PF.STF BRKT. 5=ARROW
05900 10=b, 11=#, 12=NAT., 13=bb, 14=x,15=half note,16=whole note.
06000 ADD 100 TO P5 FOR MINICLEFS.) (P6-P9 AS IN CODE 11.)
06100
06200 OTHER THINGS: P5=40 = PPP 41 = PP 42 = P 43 = MP
06300 50 = MF 51 = F 52 = FF 53 = FFF
06400 70 = CRESC. 71 = SUBITO 72 = POCO
06500 80 = ACCEL. 81 = MENO 82 = DIM.
06600 30 = ED 31=MORDANT 37=RIT.
06700 ---- MORE WILL BE ADDED! ---(FILES CLEF0,1,2,4,5,7,8 ARE FULL)
06800
00010
00020
00030
00040
00050
00060
00070
00080
00090
00100 4 LINES: 4, STF, POS, P4, P5, P6, P7, P8, P9, P10
00200 (P4) NUM OF STAVES UP FOR BAR LINE - IF ALL HIGHER
00300 PARAMETERS = 0, OR HGT1 (i.e.VERT. POS1 IF LINE).
00400 FOR HEAVY BAR LINES ADD 100*THICKNESS TO NUMBER IN P4
00500 ADD 1000 MORE FOR DOUBLE BAR.
00600 (BAR LINES DON'T AFFECT TOP AND BOT MAXI'S.-FOR AUTO. SPACE)
00700
00800 (P5) HGT2, IF P5=50, A +N IN P7=CRESC., -=DECRESC., ETC.
00900 (P6) POS2, (IGNORED IF BOX IS PRINTED.)
01000 (P7) 1=VERT. DASHES. IF P5=50 +N IN P7=CRESC., -=DECRESC.
01100 2=HORIZ. DASHES. -1 GIVES VERTICAL WAVEY LINE.
01200 3 OR 4=LGE. BRKT. (SEE DIAGRAM FOLLOWING)
01300
01400 P9=WIG.UNIT HGT., P8 CHANGES WIGGLE WIDTH, THIS AND NEXT
01500 -2 GIVES HORIZ.WAVEY LINE(P5 GIVES HGT OF WAVE BY NT NUM)
01600 ....P6=RIGHT END POINT OF WIGGLE.
01700 P10=ADDED WIDTH FOR WIGGLES AND DASHES.(1=1 MORE, ETC.)
01800
01900 (P8) NON-ZERO GIVES HORIZ. BOX SIZE(BY NT NUMS) IF P5=50
02000 IF VERT. DASHES, P8 SETS SIZE.(ALSO AFFECTS WIGGLES.)
02100 P8 ALSO CAN AFFECT HEAVY BRACKET. SEE DIAGRAM FOLLOWING.
02200
02300 (P9) GIVES VERT. BOX SIZE, IF P5=50.(AFFECTS VERT. WIGGLES ALSO.)
02400 (P10)=THICKNESS IF STRAIGHT VERTICAL LINE OR BOX(NOT BAR LINE.)
02500
00100 RESUME OF CODE 4 PARAMETERS
00200
00300 ----------------------|-------|-------|-------|-------|-------|-------
00400 P4 | P5 | P6 | P7 | P8 | P9 | P10
00500 ----------------------|-------|-------|-------|-------|-------|-------
00600 LINES HGT.1 | HGT.2 | POS.2 | 0 | 0 | 0 |
00700 ----------------------|-------|-------|-------|-------|-------|-------
00800 HEAVY VERT.LINE BOT. | TOP | =P3 | 0 | 0 | 0 | THICKN.
00900 ----------------------|-------|-------|-------|-------|-------|-------
01000 BAR LINE N=NUM. OF | 0 | 0 | | | |
01100 STAVES UP | | | | | |
01200 (+1000 FOR DBL BAR)| | | | | |
01300 ----------------------|-------|-------|-------|-------|-------|-------
01400 HEAVY BAR N+100* | 0 | 0 | | | |
01500 THICKNESS | | | | | |
01600 (+1000 FOR DBL BAR)| | | | | |
01700 ----------------------|-------|-------|-------|-------|-------|-------
01800 HEAVY BRACKET BOT. | TOP | 0 | 3 | 0 | 0 | THICKN.
01900 HGT. | HGT. | | | | |
02000 --OR-- | | | | | |
02100 N=NUM. OF | 0 | 0 | 4 | 0 | | THICKN.
02200 STAVES UP | | | | 1=BOT | | (0=4)
02300 | | | | 2=TOP | |
02400 ----------------------|-------|-------|-------|-------|-------|-------
02500 CRESC. HGT. | 50 | POS.2 | 0 OR | 0 | |
02600 | | |SPREAD | | |
02700 | | | =N | | |
02800 ----------------------|-------|-------|-------|-------|-------|-------
02900 DECRESC. HGT. | 50 | POS.2 | -1 OR | 0 | |
03000 | | |SPREAD | | |
03100 | | | =-N | | |
03200 ----------------------|-------|-------|-------|-------|-------|-------
03300 DASHES - HORIZ. HGT. | 0 | POS.2 | 2 | DASH | | THICKN.
03400 (NO SLOPE) | | | | SIZE | |
03500 ----------------------|-------|-------|-------|-------|-------|-------
03600 DASHES - VERT. BOT. | TOP | 0 | 1 | DASH | | THICKN.
03700 (NO SLOPE) HGT. | HGT. | | | SIZE | |
03800 ----------------------|-------|-------|-------|-------|-------|-------
03900 WIGGLE - HORIZ. HGT. | | POS.2 | -2 | WIGL. | WIGL. | THICKN.
04000 (NO SLOPE) | | | | WIDTH | HGT. |
04100 ----------------------|-------|-------|-------|-------|-------|-------
04200 WIGGLE - VERT. BOT. | TOP | 0 | -1 | WIGL. | WIGL. | THICKN.
04300 (NO SLOPE) HGT. | HGT. | | | WIDTH | HGT. |
04400 ----------------------|-------|-------|-------|-------|-------|-------
04500 BOXES HGT. | 50 | 0 | 0 | WIDTH | HGT. | THICKN.
04600 | | | | |0=SQUAR|
04700 ----------------------|-------|-------|-------|-------|-------|-------
04800
04900
05000
05100
05200 5 SLURS: 5, STAFF, POS1, NT1, NT2, POS2, P7=DIP(NT UNITS + OR -), P8, P9
05300 FOR P8 0=SLUR, 1=BRACKET, 2=LFT 1/2 BRKT, 3=RT 1/2 BRKT,
05400
05500 FOR AUTOMATIC ALIGNMENT OF SLUR WITH NOTES, SET P13=1, THEN
05600 IF P8=-1, END POINTS WILL HOME TO NOTE CENTERS.
05700 IF P8=-2, END POINTS WILL HOME BETWEEN NOTES.
05800
05900 USE P8=-3 TO HOME BETWEEN NOTES WHERE 1ST IS DOTTED.
06000
06100 P9=CURVE FACTOR. DEFAULT VALUE (0)=3 GIVES SLIGHTLY "FLATTENED"
06200 SLURS. TO MAKE THEM MORE ROUND, DECREASE P9 TOWARD 2.
06300 TO RESTRICT THE CURVE TO THE END PORTIONS, INCREASE P9.
06400
06500 IF P8=1 AND P9 IS NOT 0, A BRACKET WITH A NUMBER(P9) WILL BE DRAWN.
00100
00200
00300 6 BEAMS: 6, STF, POS1, NT1, NT2, POS2,
00400 FOR "MINI" BEAMS ADD 100 TO P4 (-100 FOR NEG. NUMS.)
00500
00600 (P7) STEM DIR(10=↑ 20=↓),
00700 -- 2ND DIG. IN P7=TOTAL NUM OF BEAMS.
00800 IF P7 IS NEGATIVE THEN TREMOLO SLASHES ARE MADE.
00900 IF TREMOLO, P8 SETS WIDTH. (0=2.2), P9=POS.
01000
01100 (P8) 10=LFT, 20=RT. (OR TREM. WIDTH)
01200 -10,-20=UNATTACHED PARTIAL BEAMS
01300 A 2ND DIGIT=DISPLACEMENT NUMBER.
01400 -- IF P10 HAS 30+, P8 WILL HAVE POS3 AND
01500 -- P9 WILL HAVE POS4.
01600
01700 (P9) POS3. (OR POS4 IF P10>30.)
01800 OR POSITION OF TREMOLO
01900 IF P8=0 AND P10=0 AND P9=N, N WILL BE A NUMBER OVER THE BEAM.
02000
02100 (P10) = NUM OF BEAMS DISPLACED (NO MORE THAN 9.)
02200 ADD 10 FOR INNER SHORT PARTIAL →
02300 ADD 20 FOR INNER SHORT PARTIAL ←
02400 ADD 30 FOR INNER PARTIAL BETWEEN TWO STEMS.
02500
02600 P11 CAN RESET HOMING RANGE (OR -1 = NONE.)
02700
02800 --------------------------------------------------------|-------|-------
02900 P8 | P9 | P10
03000 --------------------------------------------------------|-------|-------
03100 UNATTACHED PARTIAL BEAM POINTING → -10 | 0 | 0
03200 ← -20 | 0 | 0
03300 DISPLACEMENT IS IN 2ND DIGIT OF P8 | |
03400 --------------------------------------------------------|-------|-------
03500 ATTACHED PARTIAL BEAM POINTING → 10 | POS.3 | 0
03600 ← 20 | POS.3 | 0
03700 DISPLACEMENT IS IN 2ND DIGIT OF P8 | |
03800 --------------------------------------------------------|-------|-------
03900 INNER PARTIAL BEAM POINTING → 0 | POS.3 | 10
04000 ← 0 | POS.3 | 20
04100 DISPLACEMENT IS IN 2ND DIGIT OF P10 | |
04200 --------------------------------------------------------|-------|-------
04300 INNER BEAM POS.3 | POS.4 | 30
04400 DISPLACEMENT IS IN 2ND DIGIT OF P10 | |
04500 --------------------------------------------------------|-------|-------
04600 TREMOLO *****P7=-10 OR -20 WIDTH |TRM,POS| DISP.
04700 -PARALLEL TO OTHER BEAMS -TILT IN P3-6 | |
04800 NUMBER OF BEAMS IS SECOND DIGIT OF P7 | |
04900 | |
05000 *****P7=-10 OR -20 WIDTH | 0 | DISP.
05100 -WITHOUT OTHER BEAMS - STANDARD TILT | |
05200 NUMBER OF BEAMS IS SECOND DIGIT OF P7 | |
05300 --------------------------------------------------------|-------|-------
05400 NUMBER OVER OR UNDER BEAM 0 | NUM. | 0
05500 --------------------------------------------------------|-------|-------
05600
05700
05800
05810
05820
05830
05840
05900 7 TRILLS,PEDALS: 7, STF, POS1, VERT.POS, SZ(0=1), POS2, P7(=1=NO WIGGLE)
06000 IF P7=1, NO WAVEY LINE APPEARS.
06005
06010 IF P7 IS GREATER THAN 1, PIANO PEDAL SYMBOLS WILL PRINT.
06020 THEN: P5=PEDALS DEPRESSED (USE 3 DIGITS)
06030 000=NONE 001=RIGHT PED. ONLY
06040 010=CENTER PED. ONLY 100=LEFT PED. ONLY
06050 101=OUTER PEDS. 011=CENTER AND LEFT
06060 110=RIGHT AND CENTER 111=ALL (NOT USUAL)
06070
06080 P7=2 PLAIN SYMBOL; =3 ADDS TOP BRACK. EXTENDED TO P6 (POS2).
06090 =4 ADD LINE TO TOP OF SYMBOL. EXTENDED TO P6 POS.
06095 P8 SETS SIZE OF LINE EXTENSION TO LEFT OF SYMBOL (P7=3 OR 4)
06097
06098
06100
06200
06300
06400 8 FOR STAFF LINES: 8, HGT(STAFF NUM. 3 TO -3), (P3)POS1,
06500 P4) VERT. SHIFT, 5) SIZE FACTOR (0=1), P6) POS2.(0=200)
06600 P7) IF SET TO NON-ZERO THE STAFF WILL BE INVISIBLE.
06700 (USE THIS AS A MEANS TO SET SIZE AND POSITION OF
06800 NOT APPEARING ON A STAFF.)
06900 P8) USED TO SET MOVE-UP DISTANCE(INCHES) TO NEXT FILE'S
07000 STAFF 0. (USE P8 ONLY! WITH STAFF 0.)
07100 HORIZANTAL LINE WILL DISPLAY AT POSITION OF NEXT STAFF 0.
07200 P9=1 WILL ASK FOR ID NAME FOR THIS STAFF(TO BE USED IN 'PARTS')
07300
07400
07500 9 ACCIDS, ACCENTS, ETC.: 9, STF, POS, NOTE NUM, P5, P6=SIZE (0=1)
07600 FOR P5: b=1, #=2, NAT=3, WEDGE ACCENT ∧=4(-4=INV), ACCENT >=5,
07700 FERMATA=6 or 26(-6=INV), STAC. OR DOT=7, REPEAT BAR SIGN=8,
07800 TENUTO OR DASH=9, DNBOW=11, UPBOW=12, HARM,=13, +=14,
07900 THESIS=15, ARSIS=16, MORDANT=17, INV.MORD.=18, TRILL=20
08000
08100 ***** 2 ITEMS MAY BE ENTERED AT ONCE WITH P5. e.g. 47 WILL CREATE
08200 A WEDGE(4) WITH A DOT(7) BELOW IT; 79 MAKES A DOT(7) WITH A
08300 DASH(9) BELOW IT. IF ANY OF THE 2-DIGIT CODES ARE USED, THEY
08400 MUST! COME FIRST. e.g. 135 MAKES A HARMONIC(13) WITH AN
08500 ACCENT(5) BELOW. ETC. (513 WILL NOT WORK!)
08600
08700
08800 10 NUMBERS: 10, STF, POS, NT NUM, NUM(TO 3 DIGITS ONLY), SIZE FACT., P7
08900 P7=2 GIVES THIN LINE NUMS., =0 = BDR40 TYPE FONT WHEN IT PLOTS.
09000 =1 = BDI40 (ITALICS)
09100 P8=1 CIRCLES NUMBER, =2 BOXES NUMBER. P10>1 THICKENS BOX ETC.
09200
09300 SET P13 TO 1 FOR AUTOMATIC HOMING.
09400 (SEE HOMING INFO IN EDIT SECTION.)
09500
09600
09700 11 LIBRARY ITEMS: 11, STAFF, POS, VERT. NOTE NUM, P5)ITEM NUM,
09800 P6)HORZ. SZ., P7)VERT. SZ., P8, P9, P10
09900 P8=-1 FOR FILL ON CRT, =-2 FOR NO FILL ANYWHERE.
10000
10100 P5 MAY HAVE NUMBERS 0 THROUGH 99. NUMBERS 0-9 REFER TO
10200 THE "BASIC" DRAW FILE. (SEE 'DRAW.MAN' FOR PREPERATION
10300 OF 'DRAW' FILES.) THE "BASIC" FILE SHOULD HAVE A NAME
10400 WITH 4 LETTERS AND THE NUMBER 0 ON THE END. IF THE "BASIC"
10500 NAME IS 'CHAR0' THEN NUMBERS 10 THROUGH 19 WOULD REFER
10600 TO 'CHAR1'; 20-29 TO 'CHAR2', 30-39 TO 'CHAR3', ETC.
10700
10800 P9 = CLOCKWISE ROTATION BY DEGREES.
10900
11000 IF P10 IS SET TO 1 A "BASIC" FILE NAME WILL BE REQUESTED.
11100 THE NAME WILL BE STORED IN P10. ANY TIME P10 IS SET TO 1
11200 THE NAME WILL BE RE-REQUESTED. ANY TIME P10 IS IGNORED THE
11300 LAST NAME GIVEN WILL BE PUT INTO P10.
11400 THUS SEVERAL ITEMS CAN USE DIFFERENT "BASIC" NAMES.
11500
11600
11700 12 CIRCLES AND ARCS: 12, STF, POS, VERT. NT NUM,
11800 P5=RADIUS(BY HORIZ. SCALE NUMS)
11900 P6=DEGR.1, P7=DEGR.2; ZEROS GIVE COMPLETE CIRCLE.
12000 P8=THICKNESS(0=1 LINE, 1=2 LINES, ETC.)
12100
12200
12300 14 "SCORE" INPUT: 14, STAFF -- SEE LATER SECTION.
12400
12500
12600 16 LETTERS, WORDS, ETC.:
12700 16, STAFF, POS, VERT. NOTE NUM, P5)=SIZE FACTOR, P6
12800 ----- THEN TYPE TEXT -----
12900 ---- SEE SECTION II FOR DETAILS -----
13000
13100
13200 17 KEY SIG.: 17,STF,POS,VERT, P5)NUM OF #S OR FLATS(+=#, -=b),CLEF NUM.
13300 (P6=0=TREB, =1=BASS, =2=ALTO, =3=TENOR)
13400 FOR MINI CLEFS ADD 100 TO P6.
13500
13600
13700 18 METER: 18, STF, POS, VERT, P5)TOP NUM, P6)BOTT NUM, P7)SIZE FACTOR
13800 IF P5=99 THE LETTER C WILL PRINT
13900
14000
14100 19 ADJUST STEMS TO MEET BEAMS: 19, STAFF NUM (99=ALL STAVES)
14200 (ALSO REMOVES TAILS WHERE NEEDED)
14300
14310 ------ HOMING A BEAM FROM ONE STAFF TO ANOTHER -----
14400 19 N1 N2 ------ IF 2 NUMBERS FOLLOW 19 THE 1ST SHOULD BE THE ITEM
14410 NUMBER OF A BEAM AND THE 2ND THE STAFF NUMBER OF A NOTE WHICH THE
14420 BEAM IS TO HIT. THIS ALLOWS THE BEAM TO HOME TO ANY NOTE ON A
14430 DIFFERENT STAFF.
14440
14700 BEFORE USING THIS, CERTAIN REQUIREMENTS MUST BE MET. P6 OF
14710 THE BEAM SHOULD BE SET TO THE APPROXIMATE HORIZANTAL POSITION OF THE
14720 NOTE TO BE HIT. P4 AND P5 SHOULD BE SET TO THE VERTICAL POSITION OF
14730 THE ORIGIN (USUALLY P4). P7 SHOULD INDICATE THE STEM DIRECTION OF
14740 THE NOTE AT THE ORIGIN POINT. P11 IS BEST SET TO 1 TO INHIBIT OTHER
14750 HOMING FEATURES. IF THE BEAM IS COMPOSITE, THIS PROCEDURE MUST BE
14760 FOLLOWED FOR EACH BEAM ITEM INVOLVED.
15400 THE NOTE ON THE OTHER STAFF MAY HAVE A STEM OF ANY LENGTH AND
15500 IT MAY BE IN FRONT OF OR BEHIND THE ORIGIN POINT OF THE BEAM. IT IS
15600 PROBABLY BEST TO USE THIS FEATURE ONLY AFTER! THE OTHER '19' FEATURE
15700 HAS BEEN USED. CHECK STEM LENGTHS AND MEETING POINTS CAREFULLY AFTER
15800 USE.
15900
16000
16100 24 MAGNIFY AREA: 24,SIZE FACTOR, NEW CENTER X,Y (USE -512 TO 512 RANGE)
16200
16300 IF THE STAVES -1 THOUGH 2 ARE USED ONLY 2 NUMBERS NEED BE TYPED.
16400 24,N WHERE N IS A NUMBER OF THE FOLLOWING FORM WILL INCREASE THE
16500 SIZE BY THE LEFT DIGIT OF N. 24 200 WILL MAGNIFY BY 2 AND PUT
16600 THE FAR LEFT SIDE TO THE CENTER OF THE SCREEN. 200.5 WILL KEEP THE
16700 CENTER AS IS. 201 WILL PUT THE FAR RIGHT SIDE TO THE CENTER.
16800 300 WILL MAGNIFY BY 3, ETC.
16900
17000
17100 33 PARAMETER CONTENTS: 33 N. TO SEE EXACT CURRENT CONTENTS
17200 OF PARAMETER NUM. N WHILE IN EDIT MODE.
17300
17400
17500 44 1 --- IF N=1 FROM THIS POINT ON ALL NUMBERS AND LETTERS USING THE
17600 TYPE FONTS BDR AND BDI WILL APPEAR WITH THEIR REAL OUTLINES.
17700 THIS SHOULD BE USED ONLY FOR CHECKING ON CLOSE SPACING AS
17800 THE PROGRAM IS SLOWED CONSIDERABLY DUE TO THE GREAT NUMBER
17900 OF VECTORS TO BE DRAWN.
18000 44 -1 WILL CAUSE ALL LETTERS TO BE IN 'PRIM' FONT (UPPER AND LOWER
18100 CASE) ON CRT.
18200 44,0 WILL RETURN TO THE ORIGINAL DISPLAY MODE. SEE 7 AND 16 IN
18300 REGARD TO FONTS.
18400
18500
18600 101 SPACING SCALE: 101, STAFF NUM (101,99 ERASES IT)
18700 (THE SCALE NEED NOT BE ERASED BEFORE SHIFTING IT
18800 TO A NEW STAFF.)
18900
19000
19100 333 N1,N2,N3 PRINTS RN ARRAY FROM ITEM N1 TO ITEM N2. N3=1 FOR LPT.
19200 (USING LPT IS FATAL FOR CURRENT DPY AND MUST BE FOLLOWED BY
19300 <CALL>, F<CR> IN ORDER TO RELEASE THE LPT.)
19400 333 <CR> WILL TYPE DATA FOR ALL ITEMS.
19500
19600
19700 444 N: ESTABLISHES STAFF N AS THE BASIS FOR AUTOMATIC SPACING OF ITEMS
19800 ENTERED BY MEANS OF CODES 14 OR 144. SEE PG.10.
00100 --------- SECTION II --------------
00200
00300 16 LETTERS, WORDS, ETC.:
00400 16, STAFF, POS, P4=VERT. NOTE NUM, P5=SIZE FACTOR, P6
00500 ----- THEN TYPE TEXT -----
00600
00700 0-9, A-Z, a-z, and = . - , * ( ) " ; : + ? ! QTR NT HLF NT CAN BE USED.
00800
00900 UP TO 12 CHARACTERS WILL BE PACKED IN AN ITEM.
01000 STRINGS OF MORE THAN 12 CHARACTERS WILL BECOME SEVERAL ITEMS FOR
01100 EDITING PURPOSES.
01200 TO PLACE ITEMS IN RELATION TO ALREADY PRESENT NOTES, SET P6≠0.
01300 SEPARATE EACH ITEM BY SLASHES.
01400 THE SLASHES WILL NOT BE DRAWN.(BUT A LINE ENDED WITH ; WILL PRINT ;.)
01500
01600 WHEN P6≠0, NUMBERS WILL APPEAR OVER THE NOTES OF THAT STAFF AND YOU
01700 WILL BE ASKED TO TYPE POSITION NUMBERS FOR EACH ITEM. IF P4 (THE
01800 VERTICAL POSITION) IS SET TO 0 YOU SHOULD TYPE 2 NUMBERS FOR EACH
01900 ITEM. SEPARATE THE PAIRS OF NUMBERS BY SLASHES. THE FIRST NUMBER OF
02000 A PAIR WILL BE HORIZANTAL POS., THE SECOND WILL BE VERT. POS. THE
02100 HORIZANTAL NUMBERS WILL BE IN TERMS OF THE NUMBERS OVER THE NOTES.
02200 THUS 1.5,-3/ WOULD PUT ITEM 1 EXACTLY HALF WAY BETWEEN NOTE 1 AND
02300 NOTE 2 AND AT THE VERTICAL POSITION OF NOTE LEVEL -3. WITH
02400 1.5,-3/.7,13/ THE FIRST ITEM WOULD BE AS BEFORE AND THE SECOND WOULD
02500 BE AT .7 OF THE DISTANCE FROM THE BEGINNING OF THE LINE AND THE FIRST
02600 NOTE AND AT THE VERTICAL POSITION 13.
02700
02800 IF P4 IS ANY NON-ZERO NUMBER (AND P6≠0) ALL ITEMS WILL BE PUT AT THE
02900 LEVEL INDICATED IN P4. IN THIS CASE TYPE ONLY ONE NUMBER (FOR
03000 HORIZANTAL POSITION) PER ITEM. THIS IS PROBABLY THE BEST WAY TO PUT
03100 IN THE TEXT OF VOCAL LINES.
03200
03300 CURRENTLY (5/74) THREE TYPE FONTS ARE AVAILABLE. THE DEFAULT FONT IS
03400 CALLED 'PRIMITIVE'. ALSO THERE IS 'BDR40' AND 'BDI40'(ITALICS).
03500 ALL THESE INCLUDE UPPER AND LOWER CASE. ****** NOTE THAT IF THE TYPE
03600 FONTS ARE TO BE MIXED THE FIRST ENTRY MUST INCLUDE A FONT CONTROL
03700 CHARACTER EVEN IF IT IS THE DEFAULT FONT.
03800
03900 FONT CONTROL CHARACTERS:
04000 # = PRIMITIVE (52)
04100 & = BDR40 (NON-ITALICS) (50)
04200 @ = BDI40 (ITALICS) (51)
04300 < = OUTLINE ONLY (53)
04400 > = FILLED (54) (WILL NEVER FILL ON CRT HOWEVER.)
04500 $ = UPPER CASE (48)
04600 (use these last 2 controls only when not working with display.)
04700 % = LOWER CASE (49)
04800
04900 WHEN INITIALLY USING THE FONTS THE UPPER-LOWER
05000 CASE CHARACTER MUST APPEAR AS WELL AS THE FONT CHARACTER.
05100 LATER FONT OR CASE CHANGES MAY APPEAR SINGLY.
05200
05300 EXAMPLES: TO GET THE FOLLOWING IN NON-ITALICS -
05400
05500 Clarinet
05600
05700 TYPE - &Clarinet/ (OR: $&C%LARINET/ WHEN USING ORDINARY TTY.)
05800
05900 FOR THE NEXT WITH THE 2ND WORD ITALICS, THE 3RD PRIMITIVE-
06000
06100 TYPE - &Oboe/@cresc./#v.s./
06200
06300 &<Oboe/ WOULD PRINT "Oboe" in non-filled letters.
06400
06500 MOST OF THESE COMMANDS ARE SEMI-STICKY. TO BE SAFE THEY SHOULD BE
06600 RESET EACH TIME USED.
06700
06800 WHEN LETTERS ARE EDITED THEY APPEAR UNDER CODE #16.
06900 AT EDIT TIME P13=1 WILL CAUSE HOMING TO A NEARBY NOTE. NOW A
07000 NEGATIVE SIZE FACTOR (IN P5) WILL INVERT THE TEXT. IF THE STAFF SIZE
07100 IS LATER CHANGED THE SPACING CONTINUITY OF STRINGS LONGER THAN 12
07200 LETTERS WILL BE DISTURBED. TO CORRECT THIS SET P10=1 FOR THE
07300 MISPLACED UNIT OF TEXT. IT WILL THEN AUTOMATICALLY RESUME THE
07400 CORRECT POSITION AND RESET P10 TO 0.
07500
07600 IN GENERAL, P6-P8 SHOULD NOT BE EDITED. EACH OF THE
07700 PARAMETERS CONTAINS THE NUMBERS FOR 4 CHARACTERS. A TOTAL OF 8
07800 DIGITS IS USED IN EACH PARAMETER; 2 DIGITS PER CHARACTER.
07900
08000 THE STRING 'ABCDEFGHIJKLM' WOULD BECOME:
08100
08200 P6 -- 10111213
08300 P7 -- 14151617
08400 P8 -- 18192021
08500
08600 TO SEE THE CONTENTS OF ONE OF THESE PARAMETERS, 6, FOR EXAMPLE,
08700 TYPE '33 6'. IF YOU THEN TYPED '6 13111213' THE STRING WOULD CHANGE TO
08800 'DBCDEFGHIJKLM'. THIS METHOD OF EDITING IS NOT RECOMMENDED.
08900
09000 NUMBERS ARE 0-1, UPPER CASE LETTERS 10-35, LOWER CASE BEGIN
09100 AT 70. SPACE=47, NO MORE CHARS=99, QTR NOTE=58, HLF NOTE=59.
09200
09300 (A NEW FORMAT FOR P6-8 WAS ACTIVATED 11/75. TYPE 10,99<CR> WHILE
09400 EDITING TEXT TO AUTOMATICALLY CHANGE THE FORMAT.)
00100 -------- SECTION III -----------
00200
00300 *********** LETTER COMMANDS ***************
00400
00500 'G' = GET OLD DATA TO WORK ON.
00600
00700 IF YOU GET THE MESSAGE "UNPACK IT" USE THE MSSAUX PROGRAM.
00800
00900 'GM' = GET MORE TO ADD TO CURRENT DISPLAY
01000
01100 'RS' = RESTART. CLEARS BUFFERS AND SCREEN - NO RECOVERY POSSIBLE!
01200
01300
01400 SAVE ALL: TYPE 'SAVE' OR 'SA' ('SD' SAVES DISPLAY ONLY FOR DPY.F4)
01500
01600 IF 'SAME' IS GIVEN AS A FILE NAME THE NAME WILL BE
01700 SAME AS PREVIOUSLY.
01800
01900 'SB' = SAVE BIG. SAVES ALL IMPORTANT BUFFERS. FOR QUICKER READIN.
02000 'SM' = 'SB' WITH THE SAME NAME AS PREVIOUSLY.
02100
02200 TYPE '99' TO BACK UP FROM FILE NAME REQUEST.
02300
02400
02500
02600 <<<<<<<<<< HOW TO RUN A PROOF ON THE 'XGP' >>>>>>>>>>>>>>>>
02700
02800 THE PROGRAM 'MP.DMP[MSS,LCS]' WILL CREATE A FILE FOR THE
02900 XGP PROGRAM 'X5.DMP[MSS,LCS]' OR FOR THE CALCOMP. GENERALLY USE SIZE
03000 FACTOR = 1 FOR XGP PRINTING.
03100
03200 THE FIRST PROMPT IN MP IS 'RESET BOTTOM?' THE ANSWER SHOULD USUALLY
03300 BE 'Y' WHEN MP'S OUTPUT IS TO GO TO X5. 'P' WILL CAUSE ALL LETTERS
03400 NUMBERS TO PRINT WITH THE 'PRIMITIVE' FONT. 'A' WILL RESET TO THE
03500 ORDINARY MODE IF A 'P' HAD BEEN GIVEN EARLIER.
03600 IF THE AUTOMATIC 'MOVE-UP' FEATURE INVOLVING P8 OF THE
03700 PARAMETERS FOR STAFF 0 IS USED (SEE PG.5) AND MORE THAN ONE SEPARATE
03800 FILE IS TO BE CREATED FOR PRINTING ON THE CALCOMP, THE ANSWER TO THE
03900 FIRST PROMPT SHOULD BE 'N' FOR ALL RUNS AFTER THE LOWEST PORTION OF
04000 THE PAGE IS DONE.
04100
04200 IF THE PAGE IS IN MORE THAN ONE SECTION ALWAYS START WITH THE
04300 BOTTOM SECTION FIRST. YOU WILL BE ASKED FOR FILE NAMES. WHEN THERE
04400 ARE NO MORE TO BE GIVEN TYPE <CR>.
04500 THE QUESTION, "MOVE UP AT END?" SHOULD BE ANSWERED BY Y, N OR WITH
04600 A NUMBER. A NUMBER WILL INDICATE THE NUMBER OF INCHES TO MOVE FROM
04700 THE LEVEL OF STAFF 0 AT POSITION 0 TO STAFF 0, POSITION 0 IN THE
04800 SUCCEEDING FILE.
04900 'Y' WILL PLACE THE SUCCEEDING FILE'S LOWEST POINT ABOUT 1/2" ABOVE
05000 THE HIGHEST POINT OF THE FIRST FILE. 'N' IS USED TO WRITE FILES
05100 EXACTLY ON TOP OF ONE ANOTHER.
05200
05300 IF THE FILE NAMES FORM A SERIES OF 5 LETTER NAMES ENDING WITH
05400 CONSECUTIVE LETTERS OF THE ALPHABET, YOU MAY TYPE THE LAST NAME
05500 FOLLOWED BY THE TOTAL NUMBER OF FILES THAT ARE TO BE PRINTED ON THAT
05600 SINGLE PAGE. THE FILES WILL BE FOUND IN THE PROPER SEQUENCE.
05700 FOR EXAMPLE, 'TRC4D 4' WILL PRINT FILES TRC4D THROUGH TRC4A.
05800 IF A SECOND NUMBER IS TYPED, THE FILES WILL BE EVENLY SPACED
05900 BY THAT NUMBER OF INCHES BETWEEN THE BOTTOM OF EACH STAFF 0 -- AS
06000 DESCRIBED ABOVE.
06100
06200 A SIZE FACTOR OF 1 CREATES THE CORRECT WIDTH FOR 8 1/2" PAPER.
06300 TYPE A SECOND NUMBER(1) AFTER 'SIZE FACTOR' TO HEAVIER STAFF LINES AND
06400 LEDGER LINES. (SOMETIMES NECESSARY WITH XGP.)
06500
06600 WHEN THE PROGRAM HAS EXITED A FILE CALLED PLT.DMD HAS BEEN WRITTEN ON
06700 THE DSK. THE DATA MAY NOW BE PRODUCED ON THE PLOTTER (BY USING THE
06800 PLOT PROGRAM, P.DMP[MSS,LCS]) OR ON THE XGP (BY USING THE XGP
06900 PROGRAM, X5.DMP[MSS,LCS].) (PLOT HAS NO PROMPTS AND XGP IS
07000 SELF-EXPLANATORY.)
07100
07200
07300 ---- FOLLOWING ARE OLD PLOT COMMANDS ----
07400 'P' N1, N2, N3, N4, N5, N6 = PLOT DISPLAY
07500 N1=WIDTH FAC.,
07600 N2=HEIGHT FAC.
07700 N3=1, PLOTS ONLY THIN LINES. N3=2, PLOTS ALL BUT THIN LINES.
07800 N4=1 NO MOVE AT START
07900 N5=1 NO MOVE AT END.
08000 N6= MOVE UP 'N' STAVES AT END.
00100 -------- SECTION IV -----------
00200
00300 ****** VARIOUS WAYS TO GET INTO EDIT MODE ********
00400
00500
00600 TO MOVE LAST ITEM ENTERED LFT-RT OR UP-DOWN:
00700 'L', 'R', 'U' OR 'D' + NUM OF STEPS TO LFT-RT
00800 (NOTHING ELSE REQUIRED)
00900 THIS WORKS ONLY IMMEDIATELY AFTER THE ITEM HAS BEEN ENTERED.
00910
00920 ONCE IN EDIT MODE, THE SETTING OF P13 TO 1 WILL USUALLY CAUSE THE
00930 CURRENT ITEM TO CENTER ON A NEARBY NOTE'S HORIZANTAL POSITION.
01000
01100
01200 'ED(IT)', POS, STAFF, (CODE NUM) ----- TO USE LIGHT PEN: TYPE 'ED' <CR>
01300
01400 A VERTICAL LINE WILL APPEAR AT THE POSITION GIVEN AND ALL ITEMS
01500 WITHIN 5 SPACES OF THE LINE ON THAT STAFF WILL COME UP FOR EDITING.
01600 TO PASS OVER AN ITEM TYPE <CR>. SEE BELOW FOR METHOD OF CHANGING THE
01700 VARIOUS PARAMETERS.
01800
01900 IF THE STAFF NUMBER IS GREATER THAN 4, ITEMS ON ALL STAVES MAY BE
02000 EDITED.
02100
02200 IF A CODE NUMBER IS GIVEN, THE ITEM NEAREST THE LINE WITH THAT NUMBER
02300 WILL COME UP. FOLLOWING, ALL OTHER ITEMS OF THAT NUMBER ON THAT LINE
02400 WILL COME UP.
02500
02600 WITH THE LIGHT PEN, MOVE CURSOR TO THE ITEM TO BE
02700 EDITED. TYPE <CR> AND ITEMS ON ALL STAVES NEAR THAT POINT
02800 WILL COME UP FOR EDITING IN ORDER. (USES SAME MODE
02900 AS ABOVE.)
03000
03100 S(ET) AND A(LIGN) ---------
03200
03300 IF YOU TYPE 'S' WHILE IN THE ABOVE FORM OF EDIT MODE ('ED') THE
03400 VERTICAL LINE WILL JUMP TO THE POSITION OF THE CURRENT ITEM UNDER
03500 CONSIDERATION. TYPE <CR> TO PROCEED TO OTHER ITEMS. AT THIS POINT
03600 TYPING 'A' WILL AUTOMATICALLY ALIGN THE CURRENT ITEM TO THE POSITION
03700 OF THE ITEM AT 'SET'. TYPE 'X' TO EXIT FROM ANY EDIT MODE.
03800
03900 'LP'=LIGHT PEN --- THIS MAY BE USED IN ANY FORM OF EDIT MODE. MOVE
04000 THE CURSOR TO THE LOCATION DESIRED FOR THE ITEM.
04100 <CR> WILL MOVE THE ITEM. NOTE THAT HORIZANTAL
04200 MOVEMENT IS FREE BUT VERTICAL MOVEMENT IS BY STAFF
04300 NUMBERS. ALL DETAILS OF VERTICAL MOVEMENT MUST BE
04400 TYPED IN.
04500
04600
04700 'I' N = EDIT ITEM NUMBER N
04800 THIS MAY BE TYPED AT ANY TIME WHILE IN EDIT MODE.
04900 THE ITEM INDICATED WILL NEXT COME UP.
05000 'ST' STAFF NUM, CODE NUM--EDITS ONLY ITEMS OF THAT CODE NUM ON
05100 THAT STAFF. IF CODE=0, THEN ALL ITEMS WILL COME UP.
05200
05300
05400 *********** HOW TO CHANGE PARAMETERS ****************
05500
05600
05700 IN EDIT MODE: 'L','R','U', OR 'D' FOLLOWED BY N, MOVES N SPACES TO
05800 LEFT, RIGHT, UP OR DOWN. 2 DIRS. MAY BE GIVEN AT ONCE.
05900
06000 AFTER AN 'L' OR 'R' MOVE HAS BEEN MADE, THE LETTER ALONE (NO NUMBER)
06100 WILL SUFFICE TO MOVE THE SAME VALUE AGAIN. THE SAME APPLIES TO
06200 THE 'U-D' PAIR.
06300
06400 ****-- OR --****
06500
06600 PN1,N1 PN2,N2 PN3,N3 ETC. (TYPE PAIRS OF NUMS TO CHNG PARAMS)
06700 THE FIRST OF EACH PAIR MUST BE THE PARAMETER NUMBER
06800 AND THE SECOND WILL BE THE NEW VALUE FOR THAT PARAM.
06900
07000 IF 2 ZEROS ARE ADDED AFTER A PARAMETER NUMBER (i.e.
07100 600 INSTEAD OF 6) THE SECOND NUMBER OF THE PAIR
07200 WILL BE ADDED TO THE CURRENT VALUE OF THAT PARAMETER
07300 INSTEAD OF MERELY REPLACING. THIS IS USEFUL FOR
07400 EXTENDING P6 OF SLURS OR BEAMS, ETC.
07500
07600 <CR> ENDS EDIT AND MOVES TO NEXT ITEM FOR EDIT
07700 'X' ENDS EDIT, EXITS TO INPUT MODE
07800 'C'SAVES OLD AND NEW FORMS, I.E. "COPIES" ITEM.
07900 'C' N SAVES & MOVES TO ITEM N.
08000 'DEL' DELETES ITEM AND MOVES ON TO NEXT
08100
08200 HOMING **** SET P13=1 TO HOME IN ON ANY NEARBY NOTE ON SAME STAFF.
08300 (P13 RESETS SELF TO 0)
08400
08500
08600 GROUP EDIT COMMANDS - - - - - - -
08700
08800 'MOVE' OR 'M' <CR>: TO MOVE GROUPS OF ITEMS
08900
09000 YOU WILL BE ASKED TO TYPE:
09100 STAFF NUM, POS1, POS2, (CODE NUM)
09200
09300 TO SHRINK OR EXPAND ALL STAVES GIVE STAFF NUM = 11.
09400 IF NO CODE NUM(4TH NUM) IS GIVEN ALL ITEMS IN THE AREA WILL BE MOVED.
09500
09600 IF 'L' IS GIVEN AS STAFF NUM, THE AREA TO BE MOVED MUST
09700 BE INDICATED WITH THE LIGHT PEN.
09800
09900 ********* 88 NOT WORKING NOW 4/75 **************
10000 TO MOVE A CONTINUOUS GROUP OF ITEMS TYPE:
10100 88, 1ST ITEM NUM, LAST ITEM NUM
10200
10300 ----- 'ASK' FEATURE ****** NOT WORKING NOW 4/75 *****------
10400 IF 100 IS ADDED TO THE CODE NUM, YOU WILL BE ASKED IF YOU
10500 WANT TO MOVE EACH ITEM INDIVIDUALLY. 'X' WILL EXIT FROM 'MOVE'.
10600
10700 TYPE '99' AT ANY TIME TO BACKUP WHEN IN 'MOVE', 'COPY', ETC.
10800
10900
11000 THE SECOND PROMPT IS:
11100 TYPE NEW STAFF #, POS1, POS2, UP-DOWN #
11200
11300 IF POS2=0, POS1 WILL BE TAKEN AS THE ABSOLUTE 'MOVE' VALUE.
11400
11500 'COPY' OR 'C' <CR>: TO COPY GROUPS OF ITEMS.
11600
11700 WORKS SAME AS 'MOVE' BUT ORGINAL IS LEFT BEHIND.
11800
11900 'DELETE' OR 'DE' <CR>: TO DELETE GROUPS OF ITEMS.
12000
12100 SAME STRUCTURE AS 'MOVE'.
12200
12300 ******* N,-99 WILL DELETE ALL LINES EXCEPT! LINE 'N'.
12400 ******** USE WITH GREAT CARE!! *********
12500
12600 'ALTER' OR 'A' <CR>: TO ALTER GROUPS OF ITEMS.
12700
12800 FIRST PART IS SAME AS 'MOVE'. AFTER THE AREA HAS BEEN
12900 DESIGNATED YOU WILL BE ASKED TO SPECIFY PARAMETER CHANGES
13000 WITH PAIRS OF NUMBERS -- Pn, Change, Pn, Change, etc.
13100
13200
13300 IF THE FIRST NUMBER GIVEN IS 12 AND YOU HAVE ALREADY
13400 SPECIFIED CODE NUM 1, ALL NOTE STEMS, BEAMS AND SLURS
13500 IN THE GIVEN AREA WILL BE INVERTED.
13600
13700 WITH CODE 8 (SLURS), 12 WILL REVERSE THE CURVE AND PUT
13800 IT ON THE "WRONG" SIDE OF THE NOTE.
13900
14000 IF THE FIRST NUMBER GIVEN IS 13 AFTER CODE NUM.1 HAS BEEN
14100 SPECIFIED THEN ALL NOTES, RESTS AND BEAMS WITHIN THE GIVEN
14200 AREA WILL BECOME "MINIS". USE THIS FOR MAKING CUES, ETC.
14300
14400
14500 'DP' N1, N2, . . . . .: COVERS OR UNCOVERS PARTS OF DISPLAY
14600 END WITH A 99 TO MAKE THE EFFECT IMMEDIATE.
14700
14800 'J' WILL AUTOMATICALLY JUSTIFY LINES, ALLOWING PROPER SPACES FOR
14900 FOR MOST ACCIDENTALS, CLEFS, ETC. A STAFF NUM >5 WILL JUSTIFY
15000 ALL LINES AS A UNIT. IF POS2 = 0, IT WILL BE TAKEN AS 200.
00100 -------- SECTION V ---------
00200
00300 'SCORE' ITEMS: NOTES-- 14, STAFF
00400
00500 144 (INSTEAD OF 14)WILL READ EDIT FILE. SEE BELOW FOR FILE
00600 FORMAT. THE PROGRAM WILL ASK FOR STAFF NUMBER AND FILE NAME.
00700
00800 ****** THERE ARE 2 INPUT MODES POSSIBLE. THE 1ST DEALS SEPARATELY
00900 WITH PITCH AND RHYTHM PARAMETERS. THE 2ND COMBINES THEM
01000 IN ONE INPUT LIST. ALL THE EXAMPLES BELOW (UNTIL MODE 2
01100 IS MENTIONED) WILL REFER TO MODE 1.
01200 TO USE MODE 2 SET P3 TO 2. e.g. 14 -3 2
01300
01400
01500 **** HOW TO USE "SCORE" ITEMS ****
01600
01700 NOTES ARE TYPED IN ALMOST EXACTLY AS IN THE "SCORE" PROGRAM.
01800 I.E. S=#, F=b, N=NATURAL (bb AND ## ARE NOT AVAILABLE YET.)
01900 OCTAVE NUMBERS MUST BE USED. 'P' (FOR PROXIMITY MODE) MAY
02000 BE USED. 'O' RETURNS TO ORDINARY MODE.
02100
02200 R=REST RI=INVISIBLE REST RW=WHOLE REST Rn=WHOLE REST WITH
02300 THE NUMBER n ABOVE IT (UP TO 99).
02400
02500 ALL OF THESE MUST BE GIVEN TIME VALUES UNDER 'RHYTHM' BUT THE LAST TWO
02600 MAY BE GIVEN ANY RHYTHMIC VALUE DESIRED.
02700
02800 TREBLE CLEF IS ASSUMED. TO ENTER A CLEF, TYPE CLEF NAME
02900 FOLLOWED BY A SLASH. (TR/ BA/ AL/ TEN/) PRECEDED THE CLEF
03000 NAME BY A MINUS SIGN (-BA/) TO HAVE THE AFFECT OF A CLEF WITHOUT
03100 THE CLEF ACTUALLY APPEARING. (IF NO CLEF IS GIVEN IT WILL ALWAYS
03200 BE TREBLE CLEF POSITION.)
03300
03400 USE 'M' (FOR MEASURE) TO ENTER A BAR LINE. 'M2' WILL MAKE A BAR GO
03500 UP 2 STAVES; 'M3' WILL GO UP 3 STAVES, ETC.
03600
03700 METER (TIME SIGNATURE) MAY BE ENTERED WITH /Tn,m/ WHERE n,m ARE
03800 THE TOP AND BOTTOM METER NUMBERS. IN n=99 AND m=1 THE LETTER C WILL
03900 PRINT. (THE 1 MUST BE THERE. i.e./T99 1/ ) 98 1 GIVES 'ALLA BREVE'.
04000
04100 FOR KEY SIGS TYPE /Kna/ WHERE n=NUMBER OF ACCIDENTALS AND
04200 a='S' OR + FOR SHARPS, OR - OR 'F' FOR FLATS.
04300
04400 NO MORE THAN 72 CHARACTERS MAY APPEAR
04500 ON ONE LINE OF INPUT. (BUT MORE THAN ONE LINE MAY BE USED.)
04600 THE LINE MUST END WITH A SLASH OR, WHEN NO MORE NOTES ARE
04700 TO APPEAR, WITH A SEMI-COLON.
04800
04900 THE MOTIVIC FEATURES OF "SCORE" MAY BE USED WITH INPUT
05000 MODE 1 (BUT WITH NO "NESTING"). MOTIVES ARE SAVED
05100 WITH DISPLAY DATA AND CAN BE REUSED WHEN WORKING LATER.
05200 (NO MORE THAN 200 ITEMS CAN BE SAVED IN ANY LIST OF MOTIVES.)
05300
05400 CHORDS ARE CONSTRUCTED BY USING THE COLON IN PLACE OF THE SLASH
05500 BETWEEN NOTES.
05510
05600 THE COLON CAUSES THE NOTE TO OCCUPY THE SAME RHYTHMIC POSITION
05700 AS THE FIRST NOTE TO APPEAR AFTER A COLON. THE STEM DIRECTION IN
05800 CHORDS WILL BE DETERMINED BY THE ORDER OF APPEARANCE OF THE NOTES.
05900 IF THE FIRST NOTE IS THE LOWEST, THE STEM GOES UP; IF THE FIRST IS
06000 THE HIGHEST, THE STEM GOES DOWN. POSITIONING OF NOTES ON PROPER
06100 SIDE OF STEM AND (IN MOST CASES) SPACING OF ACCIDENTALS AND DOTS
06200 IS AUTOMATIC.
06300
06400 NOTE THAT SINCE ALL THE NOTES OF A CHORD USE ONLY ONE RHYTHM
06500 ALL REPEAT FEATURES CONSIDER ALL NOTES OF A CHORD AS ONE
06600 ENTITY. / C4 / D:F:A / REP 2 3/ WILL DRAW THE SEQUENCE
06700 C, D MINOR CHORD THREE TIMES. / D:F:A X3/ DRAWS 3 CHORDS.
06800 / D:F:A //// MAKES 4 CHORDS.
06900
07000
07100 ALL NON-RHYTHMIC ITEMS (CLEFS, ETC.) WILL BE IGNORED IN
07200 REGARD TO THE 1ST NUMBER AFTER 'REP'.
07300 / C4 / M / D:F:A / REP 2,3 / WILL CONSIDER THE 2 ITEMS
07400 TO BE 'C' AND THE D MINOR CHORD, BUT THE BAR LINE WILL
07500 BE INCLUDED IN THE REPEAT. THUS THE PROGRAM WILL DRAW
07600 'C', BAR, D MINOR - THREE TIMES.
07700
07800 GRACE NOTES MAY BE USED -- SEE UNDER RHYTHM BELOW.
07900
08000 TO BY PASS AUTOMATIC STEM DIRECTIONS TYPE SU/ (STEM UP) OR
08100 SD/ (STEM DOWN). ONCE EITHER OF THESE APPEARS ALL THE STEMS WILL
08200 GO IN THE INDICATED DIRECTION UNTIL A CHANGE IS GIVEN.
08300
08400 ********* NOTE THAT ALL REPEAT FEATURES (X, /, REP) IGNORE 'SD', 'SU'
08500 AND 'M' INDICATIONS. THUS M/C4/SD/E/F/M/SU/REP 3/ WILL DISPLAY A
08600 BAR LINE, C, E AND F WITH STEMS DOWN, A BARLINE, C WITH STEM UP AND
08700 E AND F WITH STEMS DOWN AND FINALLY ANOTHER BARLINE. THE 'REP 3'
08800 SAYS THAT 3 NOTES AND THE THINGS THAT GO WITH THEM WILL BE REPEATED.
08900
09000 (INPUT MODE 1)
09100 EX. M/BASS/ K4F /T12 8 /C3/EF/E/ M /D X 3/EN2:GS:B/M;
09200
09300 A BAR LINE COMES FIRST, THEN BASS CLEF.
09400 NEXT IS A 4 FLAT KEY SIGNATURE, FOLLOWED BY 12/8 TIME.
09500 THE 3RD NOTE WILL BE AN 'E' WITH NO ACCIDENTAL.
09600 A BAR LINE WILL PRECEED THE THREE Ds.
09700 THE LAST 3 NOTES WILL BE AN E MAJOR CHORD.
09800 ENDS WITH A BAR LINE.
09900 (In the example above the spaces on either side of the
10000 slashes are optional [to help proof reading]. The other
10100 spaces, i.e. in "12 8" and in "D X 3" are required.)
10200
10300 AFTER THE LAST NOTE HAS BEEN ENTERED THE PROGRAM WILL
10400 ASK FOR 'POS1, POS2, (SPC)'.
10500 THE NOTES WILL BE EVENLY SPACED BETWEEN THE 2 POSITIONS ENTERED.
10600 (<CR>=0,200) AFTER THE RHYTHM IS ENTERED THE NOTES WILL BE SPACED
10700 EXACTLY ACCORDING TO THEIR RHYTHMIC VALUES IF NO 3RD NUMBER WAS
10800 TYPED. IF A 3RD NUMBER IS ENTERED, THE RHYTHMIC VALUES WILL BE SPACED
10900 ACCORDING TO A PSUEDO-FIBONACCI SCALE. I.E. HALF NOTES WILL TAKE
11000 SOMEWHAT LESS THAN TWICE AS MUCH SPACE AS QUARTERS, ETC. --- USE
11100 THIS ONLY FOR SINGLE-LINE PARTS!!
11200
11300 NEXT YOU WILL BE ASKED TO 'TYPE RHYTHM'.
11400 '99' WILL BACK UP, '999' WILL ESCAPE FROM "SCORE" MODE.
11500
11600 A rhythmic duration must be given for each note, rest or
11700 chord previously entered. (Clefs, bar lines, etc. should
11800 ignored.)
11900
12000 THE MOST COMMON RHYTHMIC VALUES MAY BE ENTERED WITH LETTER NAMES.
12100 S=SIXTEENTH, E=EIGHTH, Q=QUARTER, H=HALF, W=WHOLE,
12200 T=TRIPLET(i.e.12th NOTES) , G=GRACE NOTE (OR 88TH)
12300 THESE ARE THE ONLY! LETTER NAMES THAT MAY BE USED. HOWEVER ANY
12400 RHYTHMIC VALUE, NO MATTER HOW COMPLEX, MAY BE ENTERED IN NUMERICAL
12500 FORM. 16=SIXTEENTH, 10=TEN IN THE TIME OF A WHOLE NOTE, 12=TWELVE IN
12600 THE TIME OF A WHOLE NOTE(THE NORMAL TRIPLET), ETC. NUMBERS AND
12700 LETTERS MAY BE MIXED IF DESIRED.
12800
12900 DOTTED RHYTHMS WILL AUTOMATICALLY PUT DOTS ON NOTES. MORE COMPLEX
12910 RHYTHMS MUST BE DOTTED INDIVIDUALLY. (THEY WILL BE CORRECTLY
12920 SPACED.)
13200
13300 4 16TH NOTES, A QUARTER, A DOTTED 8TH, 16TH, HALF,
13400 3 TRIPLETS, AND A WHOLE NOTE FOLLOW:
13500
13600 16////4/8./16/2/12///1;
13700 (OR: S////Q/E./S/H/T///W; )
13800
13900 ***** NOTE THAT CHORDS WITH WHOLE NOTE RHYTHM WILL APPEAR
14000 WITH A STEM. THE STEM IS NEEDED TO INSURE PROPER
14100 PLACEMENT OF NOTES A SECOND APART. YOU!! MUST
14200 REMOVE SUCH STEMS AFTER THE LINE IS COMPLETE!! *****
14300
14400 **** FOR GRACE NOTES, TYPE 'G' OR RHYTHMIC VALUE OF 88.
14500
14600 ****** INPUT MODE 2 ******** ONLY DIFFERENT FOR NOTES AND RHYTHMS
14700
14800 IN THIS CASE EACH NEW RHYTHMIC VALUE MUST BE ENTERED JUST BEFORE
14900 THE NOTE (OR CHORD) TO WHICH IT WILL APPLY. REPEAT FEATURES WILL
15000 ACT IN THE NORMAL WAY.
15100
15200 TR/4 C4/ D / 8 E/F// 16 G/ A/ 4//REP 4;
15300 PRODUCES - TREBLE CLEF, QUARTER-C, QUARTER-D, EIGHTH-E,
15400 2 TIMES 8TH-F, 16TH-G, 16TH-A, QUARTER-A, QUARTER-A, THE LAST 4
15500 ITEMS (G A A A)REPEAT WITH THEIR GIVEN RHYTHMS.
15600 OF COURSE THERE WILL NOW BE NO PROMPT FOR RHYTHMS.
15700
15800
15900 THE NEXT REQUEST IS 'ADD MARKS?' TYPE 'Y', 'N', 99 OR 999.
16000 IF 'YES' GIVE NOTE NUMBERS AND THE ABBREVIATIONS FOR MARK NAMES. WHEN
16100 COUNTING NOTES, IGNORE RESTS, CLEFS ETC. CHORDS COUNT AS 1 NOTE.
16200 THE ABBREVIATIONS FOR THE ACCENTS, ETC. ARE W(EDGE), A(CCENT),
16300 FE(RMATA), S(TACCATO), T(ENUTO)(DASH), D(OWN BOW), U(P BOW),
16400 H(ARMONIC), PL(US), CR(ESC.), DI(M.), AC(CEL.), R(IT.), C+, C-.
16500 THE LAST TWO LISTED, C+,C-, WILL PRODUCE THE LINEAR CRESC. AND DECRESC.
16600 SIGNS. WITH THESE TWO ITEMS ONLY! YOU MUST TYPE A SECOND POSITION NUMBER.
16700
16800 /1.3 C+ 3/ PUTS A CRESC. SIGN FROM BETWEEN NOTES 1 AND 2 EXTENDING
16900 TO NOTE 3.
17000
17100 /.5 C- 3.5/ PUTS A DECRESC. SIGN FROM 1/2 WAY BETWEEN THE POSITION 1
17200 (GIVEN EARLIER) AND NOTE 1 TO A POINT 1/2 WAY BETWEEN NOTES 3 AND 4.
17300
17400
17500 THE DYNAMICS, ETC. WHICH MAY BE ENTERED ARE:
17600
17700 PPP, PP, P, MP, MF, F, FF, FFF, CRESC., DIM., ACCEL., RIT.
17800
17900 ALL THESE MAY BE PUT DIRECTLY UNDER NOTES, OR, BY USING FRACTIONAL NOTE
18000 NUMBERS, BETWEEN NOTES.
18100
18200 /1.5 PP/ PUTS PP 1/2 WAY BETWEEN NOTES 1 AND 2.
18300
18400
18500 UP TO 2 MARKS(I.E. NOT DYNAMICS, ETC.) MAY BE ENTERED FOR
18600 EACH NOTE -- BUT EACH MARK MUST BE ENTERED SEPARATELY WITH ITS NOTE
18700 NUMBER. IN ADDITION TO THE MARKS A DYNAMIC INDICATION, ETC. MAY BE
18800 ENTERED FOR THE SAME NOTE.
18900
19000 EXAMPLE: 1 A / 6 A / 7 T / 10 S / 10 W;
19100 = 1 ACCENT/6 ACCENT/7 TENUTO/10 STACCATO/10 WEDGE ACCENT
19200
19300
19400 NEXT YOU WILL BE ASKED 'ADD BEAMS?' TYPE 'Y', 'N' OR nB TO THIS.
19500 nB WILL PLACE BEAMS AUTOMATICALLY. (SEE BELOW)
19600 '99' WILL BACK UP, '999' WILL ERASE INPUT AND
19700 LEAVE "SCORE" MODE.
19800
19900 'G' (FOR GO) (INSTEAD OF 'Y' OR 'N') WILL OMIT ALL FURTHER
20000 PROMPTS IN THIS MODE.
20100
20200 BEAMS WILL BE ENTERED AUTOMATICALLY IF YOU TYPE nB; WHERE n=THE
20300 NUMBER OF EIGHTH NOTES TO BE BEAMED TOGETHER. 2B; WILL BEAM BY
20400 QUARTERS (I.E. 2 8THS), 3B; GIVES STANDARD BEAMING FOR 3/8 OR 6/8
20500 TIME. DECIMAL NUMBERS MAY BE USED FOR N. THUS 1.5B; WOULD BEAM EACH
20600 GROUP OF 3 16THS.
20700
20800 IF IRREGULAR BEAMS ARE NEEDED, GIVE THE NOTE NUMBERS FOR THE FIRST
20900 AND LAST NOTES UNDER THE BEAMS. IF THE SECOND NUMBER IS NEGATIVE THE
21000 STEMS FOR THE GROUP WILL GO DOWNWARD.
21100 WHEN COUNTING NOTES, IGNORE RESTS, CLEFS ETC. CHORDS COUNT AS
21200 ONE NOTE.
21300
21400 IF YOU HAVE 4 16TH NOTES (STEMS UP) FOLLOWED BY 2 QUARTERS
21500 AND 3 8THS (STEMS DOWN) TYPE:
21600
21700 1,4 / 7 -9 ;
21800
21900 SOME PARTIAL BEAMS MAY HAVE TO BE ADDED INDIVIDUALLY AS YET.
22000
22100 ****** AUTOMATIC BEAMS ****** IN MOST SIMPLE SITUATIONS ALL THE
22200 BEAMS MAY BE PLACED AUTOMATICALLY BY SIMPLY TYPING "2B;". (OR
22300 "3B;") 2B; WILL CAUSE ALL LOGICAL BEAM CONNECTIONS TO BE MADE
22400 IN TERMS OF DUPLE RHYTHM. USE 3B; FOR TRIPLE RHYTHMS SUCH AS
22500 3/8, 6/8, 9/8, ETC. THE BASIC UNIT FOR 2B; IS THE QUARTER NOTE
22600 AND THE BASIC UNIT FOR 3B; IS THE DOTTED QUARTER.
22700
22800
22900 LASTLY YOU WILL BE ASKED 'ADD SLURS?'
23000 TYPE 'Y' OR 'N'. TO THIS.
23100
23200 IF SLURS ARE ADDED, THE ORDER NUMBERS OF THE NOTES AT THE BEGINNING
23300 AND END OF THE SLUR MUST BE GIVEN. IF THE SECOND NUMBER IS NEGATIVE
23400 THE 'DIP' WILL BE DOWNWARD AND THE STEMS WILL GO UP. VICE-VERSA FOR
23500 A POSITIVE SECOND NUMBER. IF YOU HAVE USED THE 'B' FEATURE ABOVE
23600 (AUTOMATIC BEAMS) THEN THE NEGATIVE AND POSITIVE DIPS WILL ALSO BE
23700 AUTOMATIC - HENCE NO NEED TO USE ANY NEGATIVE NUMBERS AT THIS POINT.
23800
23900 THE AMOUNT OF CURVE WILL DEPEND ON THE CONFIGURATION OF THE
24000 NOTES BETWEEN THE END POINTS. IN EXTREME SITUATIONS IT IS PROBABLE
24100 THAT THE RESULT OF THIS AUTOMATIC PROCEDURE WILL HAVE TO BE EDITED.
24200
24300 A TYPICAL EXAMPLE OF INPUT: 2,-3/ 2,-7/ 8,11;
24400
24500 THIS WILL PUT SLURS FROM 2ND TO 3RD NOTE, 2ND TO 7TH
24600 AND 8TH TO 11TH.
24700
24800 TO SLUR INTO THE 1ST NOTE, TYPE -1,1/ OR -1, -1/. TO SLUR OUT FROM
24900 THE LAST NOTE, TYPE N,99* OR N,-99* WHERE N=NUMBER OF LAST NOTE.
25000
25100 ***** NOTE THAT TIES BETWEEN THE INNER NOTES OF TWO CHORDS CANNOT
25200 BE DONE AUTOMATICALLY AS YET.
25300
25400 TO MAKE NUMBERED BRACKETS (FOR TRIPLETS, ETC.) INSTEAD OF SLURS, TYPE
25500 THE NUMBER (ONE DIGIT ONLY) DESIRED TO THE RIGHT OF THE DECIMAL OF
25600 THE FIRST OF A PAIR. THUS TO PUT A BRACKETED 3 OVER NOTES 7 TO 9,
25700 TYPE 7.3 9/ . AS WITH SLURS, THE SECOND NUMBER MAY BE NEGATIVE TO
25800 GET A DOWNWARD BRACKET.
25900
26000
26100 ∞∞∞∞∞ FOR 'BEAMS', 'MARKS' AND 'SLURS' A 2ND LINE OF INPUT MAY BE
26200 GIVEN IF THE 1ST LINE ENDS WITH '/' INSTEAD OF ';'.
26300
26400 ALL ITEMS ENTERED UNDER '14' MAY BE EDITED LATER AS IF THEY
26500 WERE ENTERED INDIVIDUALLY.
26600
26700 FOR CODE # 144: FOLLOWING IS THE FILE FORMAT FOR "SCORE" INPUT FROM
26800 AN EXTERNALLY EDITED FILE. THE NAME OF THE FILE CAN HAVE NO MORE
26900 THAN FIVE LETTERS.
27000
27100 00100 (NOTES) . . . ;
27200 00200 (RHYTHM) . . . ;
27300 00300 (ACCENTS) . . ; BLANK LINE = NO MARKS
27400 00400 (BEAMS) . . ; A BLANK LINE = NO BEAMS
27500 00500 (SLURS) . . ; BLANK LINE = NO SLURS
27600
27700 (2ND LINES MAY BE ADDED WITH ALL ITEMS EXCEPT RHYTHM.)
27800
27900 THIS SEQUENCE MAY BE REPEATED SEVERAL TIMES. THE PROGRAM WILL
28000 ASK FOR EACH OF THE STAFF NUMBERS.
28100
28200
28300 **** SUMMARY OF SCORE CODES ****
28400
28500 NOTES A-G
28600 ACCIDENTALS F-S-N
28700 REST R, RI FOR INVISIBLE REST, RW FOR WHOLE REST ALWAYS.
28800 CLEFS TR-BA-AL-TE -TR, -BA, ETC. =INVISIBLE CLEF
28900 BAR, MEASURE M
29000 KEY SIG. KnS OR KnF
29100 METER,TIME SIG. Tn,m
29200 STEM DIRECTION SU-SD
29300 iXn REPEAT ITEM i A TOTAL OF n TIMES.
29400 REP n,m REPEAT LAST n ITEMS A TOTAL OF m TIMES.
29500 Xn m SAME AS REP.
29600 ACCENT A
29700 WEDGE W
29800 TENUTO T
29900 STACCATO S
30000 HARMONIC H
30100 FERMATA FE
30200 DOWN BOW D
30300 UP BOW U
30400 +(PLUS) PL
30500 THESIS TH
30600 ARSIS AR
30700 MORDANT MO
30800 INV. MORD. I
30900 TRILL TR
31000 PPP, PP, P, MP, MF, F, FF, FFF
31100 CRESC. C
31200 ACCEL. AC
31300 DIM. DI
31400 RIT. R
31500 < (CRESC.) n1 C+ n2
31600 > (DECRESC.) n1 C- n2
00100 --------- SECTION VI -----------
00200
00300 ********* TO SET UP AUTOMATIC IRREGULAR RHYTHMIC SPACING *******
00400 ---- TYPE 444,n to setup STAFF n as basis for automatic spacing. ---
00500
00600 ANY NOTES WHICH APPEAR ON STAFF n WILL CAUSE ALL ITEMS LATER
00700 ENTERED WITH '14' OR '144' TO BE SPACED ACCORDING TO THE SPACING
00800 GIVEN ON STAFF n.
00900
01000 ALL FURTHER LINES ENTERED WILL CONFORM TO THE SPACING ON
01100 STAFF n UNLESS THE STAFF IS DELETED OR 444 IS AGAIN TYPED,
01200 FOLLOWED BY SOME NEW NUMBER.
01300
01400 ------N.B. IF ANY EDITING OF STAFF n IS DONE BE SURE THAT THE
01500 SPACE VALUES IN P9 OF NOTES OR P7 OF RESTS IS CORRECT. THE
01600 AUTOMATIC SPACING IS BASED ON THESE VALUES. THE VALUES ARE
01700 SET WHEN '14' OR '144' IS USED. THE BASIC VALUE IS ONE
01800 QUARTER=1. HALF=2, WHOLE=4, EIGHTH=.5, SIXTEENTH=.25, ETC.
01900
02000 NOTE THAT 444 MUST BE RESET AFTER ANY RESTART OR WHEN
02100 RE-RUNNING THE PROGRAM.
02200
02300 IT IS BEST TO ACCOUNT FOR ALL BAR LINES, CLEFS, METERS, ETC.
02400
02500
02600 IN GENERAL, IT IS PROBABLY BETTER TO USE MANY SMALL VALUES ON
02700 STAFF n. THIS WAY IT IS EASIER TO MAKE MANY DELICATE ADJUSTMENTS.
02800
02900 ******* PARTS ********
03000
03100
03200 WHEN ASKED "TYPE TOP STAFF #", GIVE THE HIGHEST STAFF NUMBER
03300 YOU WANT USED FOR THIS SECTION OF THE PART INVOLVED. IF YOU TYPE "2"
03400 THE LINES 2, 1, 0, ETC. WILL BE USED UNTIL BUFFER SPACE IS EXHAUSTED.
03500
03600 THE NEXT PROMPT WILL BE 'TYPE INPUT NAME, (CONT.), (NOBAR)'.
03700 TYPE THE NAME OF THE FIRST FILE OF THE FULL SCORE TO BE READ. IF A
03800 NUMBER(>0) IS TYPED AFTER THE NAME THE READ-IN PROCEDURE WILL
03900 CONTINUE ON TO THE NEXT FILE NAME, ALPHABETICALLY, AND WHEN NO MORE
04000 ARE FOUND IT WILL EXIT.
04100 ORDINARILY THE BAR LINES OF THE FULL SCORE ARE PICKED UP FOR EACH
04200 INSTRUMENTAL PART. TO OMIT THESE BARLINES TYPE ANY NUMBER(>0) AFTER
04300 THE 'CONT.' NUMBER.
04400
04500 THE NEXT PROMPT WILL BE, 'INST. NAME?' THIS ASSUMES THE
04600 ORIGINAL SCORE HAS INSTRUMENT NAMES TYPED IN P9 FOR EACH STAFF (SEE
04700 CODE 2, PG.2). BE SURE YOUR INSTRUMENT NAMES DO NOT EXCEED 5 LETTERS.
04800 IF NO INST. NAMES WERE GIVEN BUT THE PART TO BE EXTRACTED IS ALWAYS
04900 ON THE SAME STAFF, THIS STAFF NUMBER MAY BE GIVEN AS THE INST. NAME.
05000
05100 THE NEXT PROMPT WILL BE 'TRANS. NUM--'. ANSWER THIS BY THE
05200 NUMBER OF NOTE STEPS (NOT 1/2 STEPS!) TO BE TRANSPOSED.
05300
05400 THE MESSAGE "NO ROOM FOR THIS ONE" MEANS THE BUFFER DOES NOT HAVE
05500 ROOM LEFT FOR ANOTHER COMPLETE LINE. THIS LAST LINE WILL BE
05600 COMPLETELY IGNORED. THEN YOU MUST START ANOTHER FILE.
05700
05800 TRANSPOSITIONS FOR "Bb" INSTRUMENTS AND FOR "F" INSTRUMENTS WILL
05900 AUTOMATICALLY FIX MOST OF THE NEEDED CHANGES IN ACCIDENTALS. HOWEVER
06000 THERE ARE MANY CASES WHERE WRONG RESULTS MIGHT OCCUR (SUCH AS WITH
06100 NOTES TIED OVER BAR LINES, ETC.) SO CAREFUL PROOF READING IS
06200 ESSENTIAL.
06300
06400 ***** PAK (PACK AND UNPACK) ***** FOLLOW THE PROMPTS.
06500
06600 THIS IS A PROGRAM TO PACK SEVERAL MSS.DAT FILES INTO ONE FOR EASIER
06700 STORAGE. IF 'L' IS TYPED AS THE FIRST RESPONSE, THE CONTENTS OF A
06800 PACKED FILE WILL BE LISTED ON THE DISPLAY.
06900
07000 THE SECOND PROMPT IS 'TYPE FILE NAME'. IF NO NUMBER FOLLOWS THE NAME
07100 THE PROGRAM WILL TRY TO CONTINUE READING FILE NAMES, UP
07200 ALPHABETICALLY FROM THE GIVEN NAME. WHEN NO MORE ARE TO BE FOUND IN
07300 THAT SEQUENCE, THE PROMPT WILL BE GIVEN AGAIN AND A NEW SET OF FILES
07400 CAN BE ADDED. THIS WORKS ONLY FOR NAMES OF EXACTLY 5 CHARACTERS.
07500 SHORTER NAMES MUST BE READ IN ONE AT A TIME -- AND TO DO THIS, THE
07600 NUMBER 1 MUST COME AT LEAST 5 SPACES AFTER THE START OF THE LINE!
07700 WHEN NO MORE NAMES ARE TO BE ADDED, HIT 'RETURN'.
07800
07900 WHEN UNPACKING, THE PROMPT 'GET WHICH FILE?' WILL APPEAR. IF YOU HIT
08000 'RETURN' ALL NAMES IN THE FILE WILL BE UNPACKED. IF A NAME IS GIVEN,
08100 ONLY THAT ONE WILL BE UNPACKED. IF A NUMBER FOLLOWS THE NAME (AT
08200 LEAST 5 SPACES IN) A TOTAL OF THAT NUMBER OF FILES WILL BE UNPACKED
08300 BEGINNING WITH THE GIVEN NAME.
08400
08500 WHEN FILES ARE ADDED TO A PACKED FILE THEY ARE SIMPLY ADDED ON THE
08600 END. IF THE NAME GIVEN IS ALREADY THERE, THE EARLIER NAME WILL NOT
08700 BE DELETED. THUS WHEN THEY ARE UNPACKED THE EARLY VERSION OF THAT
08800 NAME MUST BE IGNORED.
00100 INDEX TO SUBROUTINES:
00200
00300 FILE NAME:
00400
00500 FORTRAN PROGRAMS:
00600
00700 MSS
00800 NOTWRT NOTWRT
00900
01000 ITMSUB ITMSUB
01100 BMS
01200 METER
01300 RNOTE
01400 MAKNUM
01500
01600 PLTSRT SLUR
01700 PLTSRT
01800 BOX
01900 HOMER
02000 SCL
02100 FORMAT
02200
02300 MOVER
02400
02500 CLEFS
02600
02700 GRED VLINE
02800 ASKIT
02900 GRED
03000 LPEN
03100 DELETE
03200 PLTCMD
03300 SAVIT
03400 LISTP
03500 FIXUP
03600
03700 XREST ALPHA
03800 TAIL
03900 REST
04000 BREP
04100 FERMTA
04200 PNUM
04300 SPACER
04400 KSIG
04500
04600 WORDS WORDS
04700 TYPE
04800 SETLET
04810 LNEND
04900
05000 SCANR SCANR
05100 NALF
05200 EDIT
05300 PRESCN
05400
05500 SCMSS
05600
05700 RHYTH RHYTH
05800 SETUP
05900 MARKS
06000 DOTS
06100
06200 NOTBMS NOTES
06300
06400 BEAMS BEAMS
06500 SLEND
06600 POSIT
06700
06800 PREFIL FILLMS
06900 ROTATE
07000
07100 COPYIT COPYIT
07200 STFCH
07300 UPDN
07400
07500 FAIL PROGRAMS:
07600
07700 LOOP LOOP
07800 FINDIT
07900 PLACE
08000 DPYNEW
08100 MVBEAM
08200 MVBX
08300 JUGGLE
08400 XNOTE
08500 BAUTO
08600 SORT2
08700 UPDATE
08800 NEWR
08900
09000 SLOOP RNOTE
09100 DRWNT
09200 RDRAW
09300 SLOOP
09400 CIRCLE
09500 PSRT
09600 RUNTHR
09700
09800 FILL FILLER
09900 LINES
10000
10100 SMALL RJBX
10200 CENTX
10300 EXTEN
10400 JDRAW
10500 CENTER
10600 LINX
10700 UNPACK
10800 ROFF
10900 NOIR
11000 NOZERO
11100 EXCH
11200 BMS
11300 IABS
11400 ABS
11500 RHORZ
11600 RTLINE
11700 FLOAT
11800 IFIX
11900
12000 MOVE MOVIT
12100 GETPTS
12200 OUTLIM
12300
12400 MSSIO GETFI2
12500 FASTI2
12600 LOOK
12700 LOOKD
12800 LOOKF
12900 (PAC)
13000 (UNPAC)
13100
13200 FILES FOR PLOTTER AND XGP OUTPUT.
13300
13400 MPRNT
13500 PPSRT SLUR
13600 PLTSRT
13700 CLEFS
13800
13900 PLTIT PLTCMD
14000 FILLMS
14100 ROTATE
14200
14300 SMALLX RJBX
14400 CENTX
14500 EXTEN
14600 JDRAW
14700 CENTER
14800 LINX
14900 UNPACK
15000 ROFF
15100 NOIR
15200 NOZERO
15300 EXCH
15400 BMS
15500 IABS
15600 ABS
15700 RHORZ
15800 RTLINE
15900 FLOAT
16000 IFIX
16100
16200 FILLX FILLER
16300 LINES
16400 PLOT
16500 (PLOTS)
00100 ***** PRNTX.DO ****** (PREPARES FILE FOR 'PLOTIT.F4')
00200 LOA MP←/DUMP %DMPRNT,SLOOP,SMALLX,NOTWRT,ITMSUB,XREST,
00300 PPSRT,FILLX,PLTIT,MSSIO↔
00400
00500
00600 ***** PRNTC.DO ****** (GOES DIRECTLY TO CALCOMP)
00700 LOA MC←/DUMP MPRNT,NOTWRT,ITMSUB,FILLER,MSFAIL,PPSRT,TREST,PLTC↔
00800
00900 XXXXXX DOMS.DO XXXXXX(TO GET NECESSARY BASIC DATA READ IN BEFORE DUMP.)
01000 LOA MM←/DUMP @DDTMSS[1,LCS]↔AL Y↔S↔G↔INIT↔βAL↔SA MM↔
01100
01200
01300 ******** ZZ.DO ******
01400 LOA @ZZ↔βSA MM↔
01500
01600 ********* RR.CMD ********
01700 MSS,LOOP,SMALL,MOVER,GRED,NOTWRT,ITMSUB,WORDS,SLOOP
01800 ,XREST,SCMSS,SCANR,MSSIO,PLTSRT,COPYIT,CLEFS,MOVE
01900 ,NOTBMS,BEAMS,RHYTH,FILL,PREFIL[MSS,LCS],CURSOR.REL[MSS,LCS]
01905
01910
01920 ***** MSX.CMD[XX,LCS] 12/75 *****
01930
02000 MSX,LOOP,SMALL,MOVER,GREDX,NOTWRT,ITMSUB,WORDS,SLOOP
02010 ,XREST,SCMSS,SCANR,MSSIO,PLTSRT,COPYIT,CLEFS,MOVE
02020 ,NOTBMS,BEAMS,RHYTH,FILL,PREFIL,CURSOR.REL[MSS,LCS]
02030
02100
02110 ***** MP.CMD[XX,LCS] 12/75 *****
02120
02200 MPRNT,SLOOP,SMALLX,NOTWRT,ITMSUB,XREST,PPSRT,CLEFS,FILLX,PLTIT,MSSIO